Kameleon-Plus  0.3.2
Interpolator.h
Go to the documentation of this file.
1 /*
2  * Interpolator.h
3  *
4  * Created on: Jun 30, 2009
5  * Author: dberrios
6  */
7 
8 #ifndef INTERPOLATOR_H_
9 #define INTERPOLATOR_H_
10 
11 #include "Model.h"
12 namespace ccmc
13 {
14  class Model;
15 
23  {
24 
25  public:
26  Interpolator();
27 
33  virtual float
34  interpolate(const std::string& variable, const float& c0, const float& c1, const float& c2) = 0;
35  virtual float interpolate(const std::string& variable, const float& c0, const float& c1, const float& c2,
36  float& dc0, float& dc1, float& dc2) = 0;
37  virtual float interpolate(const long& variable_id, const float & c0, const float& c1, const float& c2) = 0;
38  virtual float interpolate(const long& variable_id, const float& c0, const float& c1, const float& c2, float& dc0,
39  float& dc1, float& dc2) = 0;
40  virtual float getConversionFactor(const std::string&);
41  virtual float getConversionFactor(const long& variable_id);
42  std::string getModelName();
43  virtual ~Interpolator();
44  void setModelReader(Model * reader);
45 
46  protected:
48  std::string modelName;
49  //float missingValue;
50  };
51 
52 }
53 #endif /* INTERPOLATOR_H_ */